with communautes_strings;
with communautes_strings_implementation_sigma;
with communautes_strings_implementation_optimal;
with saisir_afficher; use saisir_afficher;
function Configuration return Communautes_Strings.Communaute'Class is
begin
   declare
      type variante is (sigma, optimal);
   begin
      case Variante'Value(saisir("sigma | optimal ? ")) is
         when Sigma => return Communautes_Strings_Implementation_Sigma.creer;
         when Optimal => return Communautes_Strings_Implementation_Optimal.creer;
      end case;
   exception
      when others =>
         loop
          begin
               case Variante'Value (Saisir ("sigma | optimal ? ")) is
               when Sigma => return Communautes_Strings_Implementation_Sigma.creer;
               when Optimal => return Communautes_Strings_Implementation_Optimal.creer;
               end case;
            exception
               when others => null;
            end;
         end loop;
   end;

end Configuration;

